package matrix;
changed 1
/**
 *  Класс описываем матрицу размерностью n на m
 *  так же описываются арифметические операции применимые к матрицам
 * @author Nickolas
 */
public class Matrix <T> {
    
     
    private T t;        // Тип матрици            
    private int n;      // Размерность матрици
    private int m;
    private T [][]arr = null;
    
    public Matrix(T array[][]){
        arr = array;
    }
    /**
     * Метод инициализирует переменные 
     */
    private void init(){
        n = arr.length;
        m = arr[0].length;
    }

    public T[][] getArr() {
        return arr;
    }
    public void setArr(T[][] arr) {
        this.arr = arr;
    }
    
    
    /**
     * Метод сложения матриц
     */
    public void add(Matrix M){
        T [][] arr2 = (T[][]) M.getArr();
        for(int i = 0; i < n; ++i){
            for(int j = 0; j < m; ++j){
                arr[i][j] += arr2[i][j];
            }
        }
    }
    /**
     *  Метод вычитания матриц
     */
    public void sub(Matrix M){
         T [][] arr2 = (T[][]) M.getArr();
         for(int i = 0; i < n; ++i){
            for(int j = 0; j < m; ++j){
                arr[i][j] = (T)(arr[i][j] - arr2[i][j]);
            }
        }
    }
 }
